home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1998 / MacHack 1998.toast / The Hacks! / Spotlight Hack / source / filter.h < prev    next >
Encoding:
Text File  |  1998-06-21  |  1.7 KB  |  59 lines  |  [TEXT/CWIE]

  1. // File "filter.h" - 
  2.  
  3. #ifndef ____FILTER_HEADER____
  4. #define ____FILTER_HEADER____
  5.  
  6. #ifdef __cplusplus
  7. extern "C" {
  8. #endif
  9.  
  10. // * ****************************************************************************** *
  11.  
  12. // Information on the program's precompiled jGNEFilter
  13. #define kJGNEFilterResType        'jGNE'
  14. #define kJGNEFilterResID        128
  15.  
  16. // Constant offsets into jGNEFilter for inline data
  17. #define kNextFilterOffset        0x02
  18. #define kEventHelperOffset        0x06
  19. #define kEventHelperDataOffset    0x0A
  20.  
  21. // Declare a Guide for Passing the Filter Helper, for Universal Headers
  22. #if !GENERATINGPOWERPC
  23. typedef void (*FilterHelperProcPtr)(EventRecord *theEvent, Ptr helperData);
  24. typedef FilterHelperProcPtr FilterHelperUPP;
  25. enum {
  26.     uppFilterHelperProcInfo = 0
  27.     };
  28. #define NewFilterHelperProc(proc)    (FilterHelperUPP)(proc)
  29. #else
  30. typedef UniversalProcPtr FilterHelperUPP;
  31. enum {
  32.     uppFilterHelperProcInfo = kCStackBased
  33.          | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(EventRecord *)))
  34.          | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(Ptr)))
  35.     };
  36. #define NewFilterHelperProc(proc) (FilterHelperUPP) \
  37.         NewRoutineDescriptor((ProcPtr)(proc), uppFilterHelperProcInfo, GetCurrentISA())
  38. #endif GENERATINGPOWERPC
  39.  
  40. // * ****************************************************************************** *
  41. // * ****************************************************************************** *
  42. // Function Prototypes
  43.  
  44. Ptr InstallEventFilter(FilterHelperUPP helperProc, Ptr helperData);
  45. Ptr ReleaseEventFilter(Ptr filterProc);
  46. void EventFilterHelper(EventRecord *event, Ptr helperData);
  47.  
  48. // spotlight stuff
  49.  
  50. void StartSpotlight(Point where);
  51. void ShowSpotlight(Point where, Boolean override);
  52. void RestoreWindow(WindowPeek window);
  53. Boolean HideAllButFinder(void);
  54.  
  55. #ifdef __cplusplus
  56. }
  57. #endif
  58.  
  59. #endif  ____FILTER_HEADER____